package com.evil.application.pojo.dto.reporting;

import com.evil.common.family.enums.DateTypeEnum;
import lombok.Data;
import lombok.experimental.Accessors;

/**
 * 报表维度
 *
 * @author liyang
 * @date 2022-08-08 00:00
 */
@Data
@Accessors(chain = true)
public class ReportingHeaderDTO extends AggBaseDTO {

    /**
     * 编辑弹出窗口可见
     */
    private Boolean editPopVisible;

    /**
     * 属于表格子控件
     */
    private Boolean beingTableControl;

    /**
     * 日期格式 {@link DateTypeEnum}
     */
    private Integer dateType;

    public ReportingHeaderDTO() {
        this.editPopVisible = false;
        this.beingTableControl = false;
    }

    public ReportingHeaderDTO copy() {
        ReportingHeaderDTO headerDTO = new ReportingHeaderDTO();
        headerDTO.editPopVisible = this.editPopVisible;
        headerDTO.beingTableControl = this.beingTableControl;
        headerDTO.setControlId(this.getControlId());
        headerDTO.setTitle(this.getTitle());
        headerDTO.dateType = this.dateType;
        return headerDTO;
    }

    @Override
    public boolean equals(Object o) {
        return super.equals(o);
    }

    @Override
    public int hashCode() {
        return super.hashCode();
    }
}
